/// Rust目前正在使用的关键字

/*
目前正在使用的关键字
如下关键字目前有对应其描述的功能。
    as - 强制类型转换，消除特定包含项的 trait 的歧义，或者对 use 和 extern crate 语句中的项重命名
    async - 返回一个 Future 而不是阻塞当前线程
    await - 暂停执行，直到 Future 的结果准备好
    break - 立刻退出循环
    const - 定义常量或不变裸指针（constant raw pointer）
    continue - 继续进入下一次循环迭代
    crate - 链接（link）一个外部 crate 或一个代表宏定义的 crate 的宏变量
    dyn - 动态分发 trait 对象
    else - 作为 if 和 if let 控制流结构的 fallback
    enum - 定义一个枚举
    extern - 链接一个外部 crate 、函数或变量
    false - 布尔字面量 false
    fn - 定义一个函数或 函数指针类型 (function pointer type)
    for - 遍历一个迭代器或实现一个 trait 或者指定一个更高级的生命周期
    if - 基于条件表达式的结果分支
    impl - 实现自有或 trait 功能
    in - for 循环语法的一部分
    let - 绑定一个变量
    loop - 无条件循环
    match - 模式匹配
    mod - 定义一个模块
    move - 使闭包获取其所捕获项的所有权
    mut - 表示引用、裸指针或模式绑定的可变性
    pub - 表示结构体字段、impl 块或模块的公有可见性
    ref - 通过引用绑定
    return - 从函数中返回
    Self - 实现 trait 的类型的类型别名
    self - 表示方法本身或当前模块
    static - 表示全局变量或在整个程序执行期间保持其生命周期
    struct - 定义一个结构体
    super - 表示当前模块的父模块
    trait - 定义一个 trait
    true - 布尔字面量 true
    type - 定义一个类型别名或关联类型
    unsafe - 表示不安全的代码、函数、trait 或实现
    use - 引入外部空间的符号
    where - 表示一个约束类型的从句
    while - 基于一个表达式的结果判断是否进行循环

保留做将来使用的关键字
如下关键字没有任何功能，不过由 Rust 保留以备将来应用。
    abstract
    become
    box
    do
    final
    macro
    override
    priv
    try
    typeof
    unsized
    virtual
    yield
*/


/// Rust运算符与符号
/*
运算符	示例	解释	是否可重载
!	ident!(...), ident!{...}, ident![...]	宏展开
!	!expr	按位非或逻辑非	Not
!=	var != expr	不等比较	PartialEq
%	expr % expr	算术取模	Rem
%=	var %= expr	算术取模与赋值	RemAssign
&	&expr, &mut expr	借用
&	&type, &mut type, &'a type, &'a mut type	借用指针类型
&	expr & expr	按位与	BitAnd
&=	var &= expr	按位与及赋值	BitAndAssign
&&	expr && expr	逻辑与
*	expr * expr	算术乘法	Mul
*=	var *= expr	算术乘法与赋值	MulAssign
*	*expr	解引用
*	*const type, *mut type	裸指针
+	trait + trait, 'a + trait	复合类型限制
+	expr + expr	算术加法	Add
+=	var += expr	算术加法与赋值	AddAssign
,	expr, expr	参数以及元素分隔符
-	- expr	算术取负	Neg
-	expr - expr	算术减法	Sub
-=	var -= expr	算术减法与赋值	SubAssign
->	fn(...) -> type, |...| -> type	函数与闭包，返回类型
.	expr.ident	成员访问
..	.., expr.., ..expr, expr..expr	右排除范围
..	..expr	结构体更新语法
..	variant(x, ..), struct_type { x, .. }	“与剩余部分”的模式绑定
...	expr...expr	模式: 范围包含模式
/	expr / expr	算术除法	Div
/=	var /= expr	算术除法与赋值	DivAssign
:	pat: type, ident: type	约束
:	ident: expr	结构体字段初始化
:	'a: loop {...}	循环标志
;	expr;	语句和语句结束符
;	[...; len]	固定大小数组语法的部分
<<	expr << expr	左移	Shl
<<=	var <<= expr	左移与赋值	ShlAssign
<	expr < expr	小于比较	PartialOrd
<=	expr <= expr	小于等于比较	PartialOrd
=	var = expr, ident = type	赋值/等值
==	expr == expr	等于比较	PartialEq
=>	pat => expr	匹配准备语法的部分
>	expr > expr	大于比较	PartialOrd
>=	expr >= expr	大于等于比较	PartialOrd
>>	expr >> expr	右移	Shr
>>=	var >>= expr	右移与赋值	ShrAssign
@	ident @ pat	模式绑定
^	expr ^ expr	按位异或	BitXor
^=	var ^= expr	按位异或与赋值	BitXorAssign
|	pat | pat	模式选择
|	expr | expr	按位或	BitOr
|=	var |= expr	按位或与赋值	BitOrAssign
||	expr || expr	逻辑或
?	expr?	错误传播
*/